package com.system.common.dao.person;

import com.system.common.entity.person.Person;
import com.system.common.entity.person.PersonExample;
import java.util.List;

import com.system.common.request.person.SavePersonReq;
import com.system.common.vo.person.PersonVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface PersonMapper {
    /**
     *
     * @mbg.generated 2020-03-02
     */
    long countByExample(PersonExample example);

    /**
     *
     * @mbg.generated 2020-03-02
     */
    int deleteByExample(PersonExample example);

    /**
     *
     * @mbg.generated 2020-03-02
     */
    int insert(Person record);

    /**
     *
     * @mbg.generated 2020-03-02
     */
    int insertSelective(Person record);

    /**
     *
     * @mbg.generated 2020-03-02
     */
    List<Person> selectByExample(PersonExample example);

    /**
     *
     * @mbg.generated 2020-03-02
     */
    int updateByExampleSelective(@Param("record") Person record, @Param("example") PersonExample example);

    /**
     *
     * @mbg.generated 2020-03-02
     */
    int updateByExample(@Param("record") Person record, @Param("example") PersonExample example);

    List<PersonVo> selectByPage(@Param("req") SavePersonReq req, @Param("pageSize") Integer pageSize, @Param("offset") Integer offset);
}